// node中没有window 和 DOM， node中的全局对象是global
// global是在函数之外的，所有人都是共享的 

require('./a')

// export module require __dirname __filename (这些不是全局对象上的属性，只是参数而已)


// process(进程)  setImmediate
// console.log(Object.keys(global))

// node中有一个严重的问题 单线程不稳定，无法充分利用多核cpu， 多开子进程，可以做一些复杂操作包括集群等等
// pm2

const path = require('path')
// console.log(Object.keys(process))


// 代表当前的工作目录
process.chdir('../../');// 修改工作目录
console.log(process.cwd(),path.resolve(),__dirname) // 当前工作目录 __dirname

// 环境变量
console.log(process.env.NODE_ENV); // 通过cross-env可以跨平台设置环境变量

let args = process.argv.slice(2).reduce((memo,current,index,arr)=>{
    if(current.startsWith('--')){
        console.log(current)
        memo[current.slice(2)] = arr[index+1];
    }
    return memo;
},{})

console.log(args); // --port,-P
// console.log(process.env);
// console.log(process.argv)
// console.log(process.platform)
// console.log(process.nextTick)


// 脚手架，一般会有命令行工具 